package com.rybbaby.tss.front.tssDeposit.entity;

import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Table;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Version;

/**
 * @description 订金表
 * 
 * @author 雷春琼
 * 
 * @createDate 2017-08-09 下午11:56:55
 */
@Entity
@Table(name = "tss_deposit")
@DynamicUpdate(true)
@DynamicInsert(true)
public class TssDeposit implements Serializable {
	
	private static final long serialVersionUID = 53563093976576L;
	
	/** 主键 **/
	private String id;
	/** 会员Id **/
	private String studentId;
	/** 定金金额 **/
	private Integer amount;
	/** 当前操作者Id **/
	private String adminUserId;
	/** 订金编号 **/
	private String number;
	/** 是否删除 **/
	private Boolean isDelete;
	/** 备注 **/
	private String remark;
	/** 缴费时间 **/
	private java.sql.Timestamp createTime;
	/** 版本 **/
	private Integer version;
	
	/**
	 * 方法: 取得主键
	 *
	 * @return java.lang.String 主键
	 */
	@Id
	@GeneratedValue(generator = "tss_depositIDGenerator" , strategy = GenerationType.AUTO)
	@GenericGenerator(name = "tss_depositIDGenerator" , strategy = "uuid")
	@Column(name = "id", nullable= false, length = 32)
	public String getId() {
		return this.id;
	}
	
	/**
	 * 方法: 设置主键
	 *
	 * @param id 主键
	 */
	public void setId(String id) {
		this.id = id;
	}
	
	/**
	 * 方法: 取得会员Id
	 *
	 * @return java.lang.String 会员Id
	 */
	@Column(name = "studentId", nullable= true, length = 32)
	public String getStudentId() {
		return this.studentId;
	}
	
	/**
	 * 方法: 设置会员Id
	 *
	 * @param studentId 会员Id
	 */
	public void setStudentId(String studentId) {
		this.studentId = studentId;
	}
	
	/**
	 * 方法: 取得定金金额
	 *
	 * @return java.lang.Integer 定金金额
	 */
	@Column(name = "amount", nullable= true, length = 11)
	public Integer getAmount() {
		return this.amount;
	}
	
	/**
	 * 方法: 设置定金金额
	 *
	 * @param amount 定金金额
	 */
	public void setAmount(Integer amount) {
		this.amount = amount;
	}
	
	/**
	 * 方法: 取得当前操作者Id
	 *
	 * @return java.lang.String 当前操作者Id
	 */
	@Column(name = "adminUserId", nullable= true, length = 32)
	public String getAdminUserId() {
		return this.adminUserId;
	}
	
	/**
	 * 方法: 设置当前操作者Id
	 *
	 * @param adminUserId 当前操作者Id
	 */
	public void setAdminUserId(String adminUserId) {
		this.adminUserId = adminUserId;
	}
	
	/**
	 * 方法: 取得订金编号
	 *
	 * @return java.lang.String 订金编号
	 */
	@Column(name = "number", nullable= true, length = 50)
	public String getNumber() {
		return this.number;
	}
	
	/**
	 * 方法: 设置订金编号
	 *
	 * @param number 订金编号
	 */
	public void setNumber(String number) {
		this.number = number;
	}
	
	/**
	 * 方法: 取得是否删除
	 *
	 * @return java.lang.Boolean 是否删除
	 */
	@Column(name = "isDelete", nullable= true, length = 1)
	public Boolean getIsDelete() {
		return this.isDelete;
	}
	
	/**
	 * 方法: 设置是否删除
	 *
	 * @param isDelete 是否删除
	 */
	public void setIsDelete(Boolean isDelete) {
		this.isDelete = isDelete;
	}
	
	/**
	 * 方法: 取得备注
	 *
	 * @return java.lang.String 备注
	 */
	@Column(name = "remark", nullable= true, length = 500)
	public String getRemark() {
		return this.remark;
	}
	
	/**
	 * 方法: 设置备注
	 *
	 * @param remark 备注
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	/**
	 * 方法: 取得缴费时间
	 *
	 * @return java.sql.Timestamp 缴费时间
	 */
	@Column(name = "createTime", nullable= true, length = 19)
	public java.sql.Timestamp getCreateTime() {
		return this.createTime;
	}
	
	/**
	 * 方法: 设置缴费时间
	 *
	 * @param createTime 缴费时间
	 */
	public void setCreateTime(java.sql.Timestamp createTime) {
		this.createTime = createTime;
	}
	
	/**
	 * 方法: 取得版本
	 *
	 * @return java.lang.Integer 版本
	 */
    @Version
	@Column(name = "version", nullable= true, length = 11)
	public Integer getVersion() {
		return this.version;
	}
	
	/**
	 * 方法: 设置版本
	 *
	 * @param version 版本
	 */
	public void setVersion(Integer version) {
		this.version = version;
	}
}